#!/usr/bin/env python3
"""
Rule Handler - 基于规则的分析引擎（Fallback）
"""
from typing import Dict, Any
from urllib.parse import urlparse


def analyze_with_rules(event_data: Dict[str, Any]) -> Dict[str, Any]:
    """
    使用规则引擎分析用户行为（当 LLM 不可用时的 Fallback）
    
    Args:
        event_data: 事件数据
        
    Returns:
        分析结果字典，包含 behavior_type, behavior_description, confidence
    """
    event_type = event_data.get('eventType', 'unknown')
    url = event_data.get('url', '')
    user_id = event_data.get('userId', 'unknown')
    
    # 提取域名
    try:
        domain = urlparse(url).netloc or 'unknown'
    except:
        domain = 'unknown'
    
    # 简单分类
    if event_type == 'click':
        behavior_type = 'interaction'
        description = f"用户点击了页面上的某个功能或链接"
    elif event_type == 'scroll':
        behavior_type = 'navigation'
        description = f"用户浏览页面内容"
    elif event_type == 'input':
        behavior_type = 'interaction'
        description = f"用户输入了内容"
    else:
        behavior_type = 'other'
        description = f"用户执行了 {event_type} 操作"
    
    return {
        'behavior_type': behavior_type,
        'behavior_description': description,
        'confidence': 0.7
    }

